The present invention relates to random number generators, and in particular to apparatus and methods for testing a random number generator.
As information and communication based technologies have developed, encryption and decryption have become important means of protecting the confidentiality of information. Random numbers are used in many applications such as the generation of secret keys for security systems. Accordingly, systems in which security is important use a random number generator. Random number generators are designed to generate unpredictable random numbers.
In general, random numbers are categorized into pseudo-random numbers which can be generated using mathematical formulae and software, and true random numbers (TRNs) which can be generated using physical noise sources.
Since pseudo-random numbers are generated based on mathematical formulae, the pseudo-random numbers contain some inherent predictability, and have periodicity and consistency according to the generation method utilized. Ideally, random numbers should be unpredictable and should have no periodicity. Accordingly, pseudo-random numbers are not ideal random numbers. Hence, systems in which the confidentiality of private information is fundamentally important should not use pseudo-random numbers because the quality of random numbers generated by a random number generator directly affects the security of the systems.
Accordingly, for systems requiring high quality security, it is generally desirable to generate TRNs.
Also, since the publishing of a random number security standard AIS. 31 specifying the required functions of TRNs and methods of statistically testing random numbers, generated random numbers shall have to meet requirements specified in the standard AIS. 31. According to the standard AIS. 31, the statistical characteristics of random numbers generated by a TRN generator applied to a security system are required to be tested even during operation.